top mistakes done by java developers